export default class Listen {
    // 构造函数目前为空，可以根据需要添加初始化逻辑
    constructor() {}

    // 重写 onLoad 生命周期方法
    onLoad(oldOptions, fn) {
        return function (op) {
            let newOp = fn.call(this, op); // 执行自定义逻辑，可能修改传入的参数
            oldOptions.call(this, newOp || op); // 调用原始 onLoad 方法
        }
    }

    // 重写 onShow 生命周期方法
    onShow(oldOptions, fn) {
        return function () {
            fn.call(this); // 执行自定义逻辑
            oldOptions.call(this); // 调用原始 onShow 方法
        }
    }

    // 重写 onReady 生命周期方法
    onReady(oldOptions, fn) {
        return function () {
            fn.call(this); // 执行自定义逻辑
            oldOptions.call(this); // 调用原始 onReady 方法
        }
    }

    // 重写 onHide 生命周期方法
    onHide(oldOptions, fn) {
        return function () {
            fn.call(this); // 执行自定义逻辑
            oldOptions.call(this); // 调用原始 onHide 方法
        }
    }
}
